// pages/good/detail.js
const api = require("../../request/api")
const request = require("../../request/request")
const util = require("../../utils/util")
const App = getApp();

var WxParse = require('../../wxParse/wxParse.js');

Page({

    /**
     * 页面的初始数据
     */
    data: {
        barHeight: App.globalData.paddingTop,
        styledata: {
            "bg_color": "white",
            "color": "#000",
            "leftflag": true,
            "homeflag": true,
            "name": "商品详情"
        },

        // 是否为新用户
        isNewUser: false,
        uid: '',

        if_show_box: false,
        if_show_qr_code_layer: false,
        if_show_share_box: false,
        if_show_mask: false,

        cart_num: 1,
        goods_id: 0,
        good_list: [],
        page: 1,
        page_size: 6,

        // 轮播
        current_no: 1,
        total_no: '',

        qr_code_url: '',
        image_detail_list: [],
        detail_data: {},

        // 存储所有商品图的高度，用于筛选最高的作为swiper高度
        heightArr: [],

        // 品牌详情
        brandDetail: {},

        // 店铺详情
        shopDetail: {
            true_name: '千金品牌旗舰店',
            logo: "http://img.qian.gzzsu.com/shop/qiankanghui/home-img/qianjin.png",
            extinfo: {
                certificate_img: 'http://img.qian.gzzsu.com/shop/qiankanghui/home-img/shouquan.jpg'
            }
        },

        // 折扣后价格 默认为原销售价
        discountPrice: '',


        show_cart_or_buying: 0,
        entrance: '',
        day: '',
        hour: "",
        minute: "",
        second: "",
        leftTime: 0,

        // 商品规格
        products: [],

        // 当前规格索引
        currutPro: -1,
        productID: -1,
        lowestProPrice: 0, // 规格中最低价
        highestProPrice: 0, // 规格中最高价

        // 可用金额最大的优惠券金额和索引
        // 过期时间 单位：天
        bestCouValue: 0,
        bestCouIndex: -1,

        // 平台所有的优惠券
        allCoupon: [],
        // 本商品可用 条件值判断用单价
        couponList: [],

        options: {},

        isVip: false,
        VipGrade: 0,
        discount: 1,
        vipPrice: 0,

        // 返现标识
        isCash: true,

        // 商品展示2-3条最新评论
        showComment: [
            {
                content: '评论功能目前在测试'
            },
            {
                content: '评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试'
            },
            {
                content: '评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试评论功能目前在测试'
            }
        ],

        // 购物车商品数量
        cartNum: 0
    },

    // 分享链接进入得到的sid
    getsid: '',
    // 作为分享者传出的sid
    sharesid: '',


    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: async function (options) {
        // 间隔定时器 保证直接进入商品详情的用户 uid正常获取
        // app.js已经是自动登录获取信息了 只需等待即可
        // 关于新人券必须有uid才能检索，所以置于定时器中执行
        // !this.data.uid条件避免定时器多次执行
        this.timer1 = setInterval(async () => {
            // 必须等待完整的用户信息
            // console.log(App.globalData.uid, App.globalData.fulluserInfo, App.globalData.isFriendIn);
            if (!this.data.uid && App.globalData.uid && App.globalData.fulluserInfo && !App.globalData.isFriendIn) {

                console.log(1111);
                this.init_data(options)
                this.checkAllCoupon()
                await this.get_good_detail()
                await this.getbrandDetail()

                await this.getshopDetail()
                await this.build_sid()

                return clearInterval(this.timer1)
            }
            // 如果是朋友圈点击就直接获取商品详情，计算价格
            // 因为永远不会有uid、完整用户信息
            else if (!this.data.uid && App.globalData.isFriendIn) {

                console.log(2222);
                this.init_data(options)
                this.checkAllCoupon()
                await this.get_good_detail()
                await this.getbrandDetail()

                await this.getshopDetail()
                await this.build_sid()

                return clearInterval(this.timer1)
            }
        }, 100);

        // 用户通过分享链接进入才会有的操作
        // 用于积累分享积分、绑定分销上下级关系（nobind=0）
        let { sid, nobind } = options
        if (sid) {
            this.getsid = sid
            this.nobind = nobind

            console.log("sid-nobind", sid, nobind);
            this.sendShareInfo()
        }
    },

    // 初始化数据
    init_data(options) {

        // 如果商品ID丢失，直接返回上一个页面
        if (!options.id) {
            wx.navigateBack({
                delta: 1
            });
            return
        }

        // 计算折扣
        let discount = 1
        let VipGrade = App.globalData.VipGrade
        switch (VipGrade) {
            case 1:
                discount = 0.88
                break;
            case 2:
                discount = 0.85
                break;
            case 3:
                discount = 0.8
                break;
            default:
                break;
        }
        this.setData({
            uid: App.globalData.uid,
            isNewUser: App.globalData.userInfo?.is_new_user == 1 ? true : false,
            goods_id: options.id,
            isVip: App.globalData.isVip,
            VipGrade: App.globalData.VipGrade,
            discount,
            entrance: options.entrance,
            cartNum: App.globalData.cartnum,
            options
        })

        if (this.data.uid) {
            this.sharesid = `${this.data.uid}a${this.data.goods_id}a1`
        }
    },

    // 处理富文本解析
    handle_content(content) {
        // 此处的第一个content是与content.nodes相对应的
        // <template is="wxParse" data="{{wxParseData:content.nodes}}" />
        WxParse.wxParse('content', 'html', content, this, 0)
    },

    // 获取所有轮播图片的高度存到数组
    getAllimgHeight(e) {
        let imgheight = e.detail.height
        console.log(imgheight);
        let str = `heightArr[${this.data.heightArr.length}]`
        this.setData({
            [str]: imgheight / 2
        })
    },

    // 提示该规格商品无库存
    nomoregoods() {
        util.showToast('该规格商品暂无更多库存')
    },

    // 获取品牌详情
    async getbrandDetail() {
        let res = await request.postall(api.BrandDeatail, { id: this.data.detail_data.brand_id })

        // 如果绑定了品牌
        if (res.code == 0) {
            this.setData({
                brandDetail: res.data
            })
        }
        console.log('品牌详情', res);
    },

    // 获取店铺详情
    async getshopDetail() {
        let res = await request.postall(api.shopDetail, { id: this.data.detail_data.seller_id })

        // 如果查询到了店铺
        if (res.code == 0) {
            this.setData({
                shopDetail: res.data
            })
        }
        console.log('店铺详情', res);
    },

    // 更换规格
    changeProducts(e) {
        // 获取完商品详情会传入空对象进行手动调用，所以加?避免报错。目前默认选择第一个规格，后续通过后端筛选最热规格。
        let index = e?.currentTarget?.dataset?.index ? e.currentTarget.dataset.index : 0
        // 点击同一目标取消选择
        if (index == this.data.currutPro) {
            this.setData({
                currutPro: -1,
                productID: -1,
                vipPrice: (parseFloat(this.data.lowestProPrice) * this.data.discount).toFixed(2),
                discountPrice: (parseFloat(this.data.lowestProPrice) - this.data.bestCouValue).toFixed(2)
            })
            return
        }

        let products = this.data.products
        // 折扣
        let discount = this.data.discount
        let vipPrice = (products[index].sell_price * discount).toFixed(2)
        let discountPrice = (products[index].sell_price - this.data.bestCouValue).toFixed(2)
        this.setData({
            currutPro: index,
            vipPrice,
            discountPrice,
            productID: products[index].id,
            chociePrice: products[index].sell_price.toFixed(2)
        })
    },

    // 图片预览
    PreviewImg(e) {
        let imglist = this.data.detail_data.photo_array
        let currentImg = e.currentTarget.dataset.src
        wx.previewImage({
            current: currentImg, // 当前显示图片的http链接
            urls: imglist,// 需要预览的图片http链接列表
            fail: function (err) {
                // console.log('失败', err);
            },
            success: function (res) {
                // console.log('成功', res);
            },
        })
    },

    // 品牌执照预览
    PreviewBrandImg(e) {
        // let imglist = this.data.detail_data.photo_array
        wx.previewImage({
            current: this.data.shopDetail.extinfo.certificate_img, // 当前显示图片的http链接
            urls: [this.data.shopDetail.extinfo.certificate_img],// 需要预览的图片http链接列表
        })
    },

    // 加入购物车/购买框小图片点击预览
    smallPreviewImg(e) {
        let img = this.data.detail_data.img
        wx.previewImage({
            current: img, // 当前显示图片的http链接
            urls: [img],// 需要预览的图片http链接列表
        })
    },

    // 查看资质(跳转商店信息页面）
    checkQualification() {
        // 1是默认的店铺id
        let id = this.data.detail_data.seller_id == 0 ? 1 : this.data.detail_data.seller_id
        wx.navigateTo({
            url: `/pages/good/shopInfo?shopid=${id}`,
            success: (result) => {

            },
            fail: () => { },
            complete: () => { }
        });

    },

    // 跳转评论列表页
    jumpComment() {
        wx.navigateTo({
            url: '/pages/good/comment'
        })
    },

    // 拼接分享sid并保存到data
    async build_sid() {
        let id = this.data.goods_id
        let uid = this.data.uid
        if (!uid) {
            await App.gologin()
            // 朋友圈直接查看页面，无法使用wx.login，所以登录会失败。因此需要这个提示
            if (!App.globalData.uid) {
                util.showToast('前往小程序查看更多商品')
                return
            }
            let sid = App.globalData.uid + 'a' + id + 'a1'
            this.sharesid = sid
        } else {
            let sid = App.globalData.uid + 'a' + id + 'a1'
            this.sharesid = sid
        }
    },

    // 调用分享接口
    async sendShareInfo() {
        let shareRes

        console.log('this.data.uid', this.data.uid);
        // 已登录
        if (this.data.uid) {
            shareRes = await request.post(api.sendShare, { uid: this.data.uid, sid: this.getsid })
            console.log('shareRes 11111', shareRes);

        }
        // 未登录 调用wx.login接口
        else {
            wx.login({
                success: async res => {
                    console.log('有没有', res);
                    if (res.code) {
                        let params = {
                            code: res.code,
                            sid: this.getsid
                        }
                        shareRes = await request.post(api.sendShare, params)
                        console.log('shareRes 22222', shareRes);

                    }
                },
                fail: err => {

                }
            })
        }
        console.log('shareRes', shareRes);
    },

    // 检查所有平台优惠券，判断可用的最优优惠券，预估到手价
    async checkAllCoupon() {
        // 发送请求筛选出可用优惠券，保存到 AvailableCou
        // 后台一张优惠券都没有就直接返回
        let temList = await request.post(api.couponList, {})
        if (temList.length == 0) return

        // 筛选总价大于条件值 或是无门槛券
        let price = this.data.detail_data.sell_price
        let goodid = this.data.detail_data.id
        let isNewUser = this.data.isNewUser
        // let realList = temList.filter((item, index) => {
        //     // 筛选总价大于条件值 或是无门槛券 产品券
        //     if (item.type == 1 && goodid == item.condition) {
        //         return true
        //     } else if (item.type != 1 && item.limit_sum <= price || item.type == 8) {
        //         return true
        //     }
        // })

        let realList = temList.filter((item, index) => {
            switch (item.type) {
                case 8:
                    return true
                    break;
                case 1:
                    // 指定多商品
                    let idArr = item.condition.split(',')
                    let canUse = false
                    idArr.forEach(idstr => {
                        if (idstr == goodid && item.limit_sum <= price) {
                            canUse = true
                            return
                        }
                    });
                    if (canUse) {
                        return true
                    } else {
                        return false
                    }
                    break;

                case 7:
                    if (item.limit_sum <= price) {
                        return true
                    } else {
                        return false
                    }
                    break;
                case 9:
                    if (isNewUser) {
                        return true
                    } else {
                        return false
                    }
                    break;
                default:
                    return false
                    break;
            }
        })
        console.log('realList', realList);
        // 无优惠券满足本订单直接返回
        if (realList.length == 0) return
        this.setData({
            couponList: realList
        })

        // 选出金额最大可领取的优惠券索引
        let couindex = 0, temMax = 0
        this.data.couponList.forEach((item, index) => {
            if (item.value > temMax) {
                temMax = item.value
                couindex = index
            }
        });

        // 是否多规格
        let hasProducts = this.data.products.length == 0 ? false : true

        let whichprice = hasProducts ? this.data.lowestProPrice : this.data.discountPrice
        let temPrice = whichprice - temMax
        temPrice = parseFloat(temPrice.toFixed(2))
        // console.log('temPrice', temPrice);
        this.setData({
            discountPrice: temPrice,
            bestCouValue: temMax,
            bestCouIndex: couindex
        })
    },

    // 计算剩余时间
    count_time(end_time) {
        //获取当前时间
        var date = new Date();
        var now = date.getTime();
        //设置截⽌时间
        var str = end_time;
        console.log(end_time);
        var endDate = new Date(str);
        var end = endDate.getTime();
        console.log(now);
        console.log(end);
        //时间差
        var leftTime = end - now;
        //定义变量 d,h,m,s保存倒计时的时间
        var d, h, m, s;
        console.log(leftTime);
        if (leftTime >= 0) {
            d = Math.floor(leftTime / 1000 / 60 / 60 / 24);
            h = Math.floor(leftTime / 1000 / 60 / 60 % 24);
            m = Math.floor(leftTime / 1000 / 60 % 60);
            s = Math.floor(leftTime / 1000 % 60);
        }
        else {
            return
        }
        // 将倒计时赋值到div中
        this.setData({
            day: d + '天',
            hour: h + "时",
            minute: m + "分",
            second: s + "秒",
            leftTime,
        })
        setTimeout(() => this.count_time(end_time), 1000);
    },

    // 获取本商品详细信息
    async get_good_detail() {
        let res = await request.post(api.goods_details, { id: this.data.goods_id })
        let lowestIndex = 0
        // 是否多规格
        let hasProducts = res.products_array.length == 0 ? false : true
        if (hasProducts) {
            let temArr = []
            res.products_array.forEach(item => {
                temArr.push(item.sell_price)
            });
            let lowestProPrice = Math.min(...temArr)
            let highestProPrice = Math.max(...temArr)
            lowestIndex = temArr.indexOf(lowestProPrice)
            console.log('lowestIndex', lowestIndex);

            this.setData({
                lowestProPrice: lowestProPrice.toFixed(2),
                highestProPrice: highestProPrice.toFixed(2)
            })
        }
        // console.log(this.data.discount);
        this.setData({
            detail_data: res,
            discountPrice: res.sell_price,
            vipPrice: hasProducts ? (parseFloat(this.data.lowestProPrice) * this.data.discount).toFixed(2) : (res.sell_price * this.data.discount).toFixed(2),
            products: res.products_array
        })
        let defaultPro = {
            currentTarget: {
                dataset: {
                    index: lowestIndex
                }
            }
        }

        // console.log(defaultPro);
        this.changeProducts(defaultPro)
        // this.get_detail_image(res.content)


        this.handle_content(res.description)
        // this.handle_content(ress.content)


        if (this.data.entrance == 'promotion') {
            this.count_time(res.ext_skill.end_time)
        }
    },

    // 点击其他商品查看详情
    go_detail(e) {
        let id = e.detail.currentTarget.dataset.id
        if (!id) {
            util.showToast('所选商品暂无记录')
            return
        }
        wx.navigateTo({
            url: '/pages/good/detail?id=' + id,
        })
    },

    // 商品列表组件点击加入购物车
    async cart_add(e) {
        if (!this.data.uid) {
            util.showToast('请登录后再添加购物车哦')
            return
        }
        let id = e.detail.currentTarget.dataset.id
        let goodDetail = await request.post(api.goods_details, { id })
        if (goodDetail.store_nums <= 0) {
            wx.showToast({
                title: '该商品暂无库存，请挑选别的心仪商品吧',
                icon: 'none',
                duration: 2000
            });
            return
        }

        // 筛选最低价格规格id，默认选最低规格
        let temArr = []
        goodDetail.products_array.forEach(item => {
            temArr.push(item.sell_price)
        });
        let lowestProPrice = Math.min(...temArr)
        let lowestIndex = temArr.indexOf(lowestProPrice)
        let skuid = goodDetail.products_array[lowestIndex].id
        // console.log('skuid', skuid);

        let params = {
            goods_id: id,
            uid: this.data.uid,
            goods_sku_id: skuid
        }
        let res = await request.post(api.cart_add, params)
        if (res) {
            let cartRes = await request.post(api.cart_list, { uid: this.data.uid })
            // console.log(cartRes);
            App.globalData.cartnum = cartRes.total_goods_nums
            this.setData({
                cartNum: cartRes.total_goods_nums,
            })

            // this.handleChangeCart()
        }
        util.showToast("已加入购物车")
    },

    get_detail_image(image_str_url) {
        let image_str_url_list = image_str_url.split(',')
        image_str_url_list = this.delete_shop_str(image_str_url_list)
        this.setData({
            image_detail_list: image_str_url_list
        })
    },
    delete_shop_str(image_str_url_list) {
        for (let i = 0; i < image_str_url_list.length; i++) {
            image_str_url_list[i] = image_str_url_list[i].replace('/data/', '/')
        }
        return image_str_url_list
    },

    // 加载商品列表（上拉加载同样调用该方法）
    get_goods_list() {
        util.showLoading('商品加载中')
        let params = {
            page: this.data.page,
            pageSize: App.globalData.brandId == -1 ? '' : this.data.page_size,
            limit: App.globalData.brandId == -1 ? this.data.page_size : '',
            // uid: this.data.uid,
            id: App.globalData.brandId == -1 ? '' : App.globalData.brandId
        }
        // 需要往旧列表添加
        let list = this.data.good_list

        // 判断请求路径，有品牌id则请求品牌商品
        let requestUrl = params.id ? api.BrandIndex : api.goods_more
        request.post(requestUrl, params).then(res => {
            // res也要判断
            res = params.id ? res.goods : res
            if (res.length != 0) {
                // 计算每件商品返现金额
                for (let i = 0; i < res.length; i++) {
                    let mx = parseInt(Math.random() * 10) / 10
                    // 返现比例为原价的 8%-12%
                    let youhui = res[i].sell_price * (mx * 0.04 + 0.08)
                    res[i].youhui = youhui.toFixed(2)
                }

                let new_list = list.concat(res)
                this.setData({
                    good_list: new_list
                })
                util.hideLoading()
            }
            else {
                this.setData({
                    noMoreData: true
                });
                util.hideLoading()
                util.showToast('暂无更多商品了');
            }
        })
    },

    // swiper当前current改变会触发
    swiper_no_change(e) {
        // 用于设置轮播图右下角当前图片数字
        this.setData({
            current_no: e.detail.current + 1
        })
    },

    // 购买和加购物车前需要判断登录状态
    async show_box(e) {
        // console.log(this.data.uid);
        if (App.globalData.isFriendIn) {
            util.showToast('购买请前往小程序操作噢~')
            return
        }
        // !this.data.uid
        else if (!this.data.uid) {
            let flag = await App.confirmLogin()
            // console.log('flag', flag);
            if (flag) {
                this.init_data(this.data.options)
                // console.log(this.data.VipGrade);
                // 设置vip价格
                this.setData({
                    vipPrice: this.data.detail_data.products_array.length !== 0 ? (parseFloat(this.data.lowestProPrice) * this.data.discount).toFixed(2) : (res.sell_price * this.data.discount).toFixed(2),
                })
                let show_cart_or_buying = e.currentTarget.dataset.show_cart_or_buying
                this.setData({
                    if_show_box: true,
                    if_show_mask: true,
                    show_cart_or_buying
                })
            } else {
                util.showToast('系统繁忙，请稍后重新登录')
            }
        } else {
            let show_cart_or_buying = e.currentTarget.dataset.show_cart_or_buying
            this.setData({
                if_show_box: true,
                if_show_mask: true,
                show_cart_or_buying
            })
        }
    },

    // 清除所有弹出层 一般是被mask组件调用 触摸屏幕清除所有
    clear_mask() {
        this.setData({
            if_show_box: false,
            if_show_share_box: false,
            if_show_qr_code_layer: false,
            if_show_mask: false,
        })
    },

    // 减少数量
    minus() {
        this.setData({
            cart_num: --this.data.cart_num
        })
    },

    // 增加数量
    plus() {
        this.setData({
            cart_num: ++this.data.cart_num
        })
    },

    // 加入购物车
    async confirm_cart() {
        util.showLoading("正在添加")
        let params = {
            goods_num: this.data.cart_num,
            goods_id: this.data.goods_id,
            uid: this.data.uid
        }
        if (this.data.products.length > 0) {
            if (this.data.productID == -1) {
                util.showToast('请选择商品规格')
                return
            }
            params.goods_sku_id = this.data.productID
            // params.product_id = this.data.productID
        }
        let res = await request.post(api.cart_add, params)

        if (res) {
            let cartRes = await request.post(api.cart_list, { uid: this.data.uid })
            // console.log(cartRes);
            App.globalData.cartnum = cartRes.total_goods_nums
            this.setData({
                cartNum: cartRes.total_goods_nums,
            })
        }

        this.setData({
            if_show_box: false,
            if_show_mask: false
        })
        util.showToast("已加入购物车")
    },

    // 弹出自定义分享框
    show_share_box() {
        this.setData({
            if_show_share_box: true,
            if_show_mask: true
        })
    },

    // 跳转店铺
    gotoshop() {
        wx.switchTab({
            url: '/pages/home/home',
        })
    },

    // 跳转购物车
    go_cart() {
        wx.switchTab({
            url: '/pages/home/cart',
        })
    },

    // 直接购买回调
    confirm_buying() {
        if (this.data.products.length > 0) {
            if (this.data.productID == -1) {
                util.showToast('请选择商品规格')
                return
            }
        }
        // console.log(this.data.productID);
        // return
        this.clear_mask()
        let url = '/pages/order/pay?type=1' + '&good_id=' + this.data.goods_id + '&number=' + this.data.cart_num + '&productID=' + this.data.productID
        wx.navigateTo({
            url,
        })
    },

    // 用户从客服聊天返回后的回调
    go_contact(e) {
        // console.log(e);
    },

    // 跳转VIP页面
    go_vip() {
        wx.navigateTo({
            url: '/vip/vip'
        })
    },

    // 获取服务器端图片的二维码存储路径
    get_qr_code() {
        let params = {
            sid: this.data.sharesid
        }
        this.setData({
            if_show_share_box: false,
            if_show_mask: true,
            if_show_qr_code_layer: true,
        })
        request.get(api.qr_code, params).then(res => {
            console.log(res);
            this.setData({
                qr_code_url: res.img
            })
        })
    },

    // 通过路径保存图片到本地
    save_qr_code() {
        this.setData({
            if_show_mask: false,
            if_show_qr_code_layer: false,
        })
        wx.showLoading({
            title: '下载中',
        })
        // 根据下载资源路径下载资源
        wx.downloadFile({
            url: this.data.qr_code_url,
            success: res => {
                // 保存图片到系统相册
                wx.saveImageToPhotosAlbum({
                    // 必传参数 本地临时路径或本地路径 不能网络路径
                    filePath: res.tempFilePath,
                    success: res => {
                        wx.hideLoading()
                        wx.showModal({
                            content: '保存成功'
                        })
                    }
                })
            }
        })
    },

    // 优惠券相关函数
    show_ticket() {
        // 直接跳转领券中心
        wx.navigateTo({
            url: "/coupon/couCenter"
        })
    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function (e) {
        let mobile = App.globalData.mobile
        let VipGrade = this.data.VipGrade
        let sid = this.sharesid

        // 记录分享次数
        request.postall(api.wxacodeshare, { uid: this.data.uid, sid: sid }).then((res) => {
            console.log(res);
        })

        let nobind = 1 // 正常不绑定关系
        if (mobile.length == 11 && VipGrade >= 1) {
            nobind = 0 // 如果是分销员 则置零 绑定关系
        }

        let share_path = `/pages/good/detail`;
        let sharePath = `/pages/home/home?share=${share_path}&sid=${sid}&id=${this.data.goods_id}&nobind=${nobind}`

        this.setData({
            if_show_share_box: false,
            if_show_mask: false
        })

        let shareObj = {
            title: this.data.detail_data.name,
            path: sharePath, // 分销员才能绑定关系，nobind=0
            imageUrl: this.data.detail_data.img,

            success: function (res) {
                if (res.errMsg == 'shareAppMessage:ok') {
                    util.showToast('分享成功');
                }
            },
            fail: function (err) {
                console.log(err);
                util.showToast('分享失败');
            },
        };

        console.log('shareObj', sid, mobile, shareObj);
        return shareObj;
    },
    // wx.showShareMenu
    // 无法使用async 会导致分享参数异常
    // 分享到朋友圈只能携带参数，无法决定跳转的路径
    onShareTimeline() {
        let mobile = App.globalData.mobile
        let VipGrade = this.data.VipGrade
        let sid = this.sharesid

        // 记录分享次数
        request.postall(api.wxacodeshare, { uid: this.data.uid, sid: sid }).then((res) => {
            console.log(res);
        })

        // 如果是分销员 这置零绑定关系
        let nobind = 1
        if (mobile.length == 11 && VipGrade >= 1) {
            nobind = 0
        }

        // 不需要路径
        // let healthPath = `/pages/good/detail`;
        // let homePath = `/pages/home/home`

        let query = `sid=${sid}&id=${this.data.goods_id}&nobind=${nobind}`

        let shareObj = {
            title: this.data.detail_data.name,
            // query: `healthPath=${healthPath}&homePath=${homePath}&sid=${sid}&id=${this.data.goods_id}&friend=${true}`,
            query: query,
            imageUrl: this.data.detail_data.img,
            success: function (res) {
                if (res.errMsg == 'shareAppMessage:ok') {
                    util.showToast('分享成功');
                }
            },
            fail: function (err) {
                console.log(err);
                util.showToast('分享失败');
            },
        };
        // console.log(shareObj);
        return shareObj
    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {
        var noMoreData = this.data.noMoreData;
        if (!noMoreData) {
            var pageno = this.data.page;
            this.get_goods_list()
            pageno++;
            this.setData({
                page: pageno
            });
        }
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {
        clearInterval(this.timer1)

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

})